import { MessageTypeEnum } from '../enum'

/** IM配置 */
export interface IMConfig {
  /** 连接配置 */
  connectConfig: {
    /** 用户id */
    userId: string
    /** 用户名称 */
    userName: string
  }
  /** 连接状态回调 */
  onConnectStatus: Function
  /** 消息接收回调 */
  onMessage: Function
  /** 错误回调 */
  onError: Function
}

/** 聊天成员 */
export interface IMChatMember extends ImMessagePageTypes.IResponse {
  /** 是否选中 */
  checked: boolean
}

/** 聊天消息 */
export interface IMChatMessage {
  /** 成员id */
  memberId: string
  /** 消息项 */
  messageItems: ChatImMessagePageTypes.IResponse[]
}

/** 实时接收的消息 */
export interface IMReceiveMessage {
  /** 消息内容 */
  reqMsg: string
  /** 请求id */
  requestId: number
  /** 消息类型 */
  type: MessageTypeEnum
}

/** 文本消息 */
export interface IMTextMsg {
  /** 文本消息 */
  msg: string
  /** 对方id */
  toId: string
}
